package ad_exercise_2.model;

/**
 * Deze klasse bevat allerlei informatie over een station. Zo bevat de klasse een set met alle verbindingen, de naam van het station. Daarnaast kan ook
 * aangegeven worden wat het vorige station op een gedefinieerde route was en de kortste afstand tot het beginstation.
 * 
 * @author Karen Berntsen (s0815799)
 * @author Erik Stens (s0615374)
 * 
 */

import java.util.HashSet;
import java.util.Set;

public class Station {
	private final int		INF				= 1000000;
	private Set<Verbinding>	verbindingSet	= new HashSet<Verbinding>();
	private String			name;
	private int				index;
	
	private boolean			colour			= false;
	private Station			vorigStation;
	private int				distanceToStart	= INF;
	
	public Station(int index) {
		name = Integer.toString(index + 1);
		this.index = index;
		vorigStation = this;
	}
	
	public Station(String name, int index) {
		this.name = name;
		this.index = index;
		vorigStation = this;
	}
	
	public Set<Verbinding> getVerbindingSet() {
		return verbindingSet;
	}
	
	public String getName() {
		return name;
	}
	
	public int getIndex() {
		return index;
	}
	
	public boolean addVerbinding(Verbinding verbinding) {
		return verbindingSet.add(verbinding);
	}
	
	public boolean getColour() {
		return colour;
	}
	
	public void setColour(boolean colour) {
		this.colour = colour;
	}
	
	public void setVorigStation(Station station) {
		vorigStation = station;
	}
	
	public Station getVorigStation() {
		return vorigStation;
	}
	
	public void setDistanceToStart(int distance) {
		distanceToStart = distance;
	}
	
	public int getDistanceToStart() {
		return distanceToStart;
	}
}
